home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1997 #3 / Amiga Plus CD - 1997 - No. 03.iso / pd / programmierung / alienbreed3d2_src / cheesesauce / abreed3.lha / loadfromdisk.s < prev    next >
Text File  |  1995-09-14  |  10KB  |  659 lines

  1.  
  2. SFX_NAMES:
  3.  dc.l ScreamName,4400
  4.  dc.l ShootName,7200
  5.  dc.l MunchName,5400
  6.  dc.l PooGunName,4600
  7.  dc.l CollectName,3400
  8. ;5
  9.  dc.l DoorNoiseName,8400
  10.  dc.l BassName,8000
  11.  dc.l StompName,4000
  12.  dc.l LowScreamName,8600
  13.  dc.l BaddieGunName,6200
  14. ;10
  15. ; dc.l 0,0
  16.  dc.l SwitchNoiseName,1200
  17.  dc.l ReloadName,4000
  18.  dc.l NoAmmoName,2200
  19.  dc.l SplotchName,3000
  20.  dc.l SplatPopName,5600
  21. ;15 
  22.  dc.l BoomName,11600
  23.  dc.l HissName,7200
  24.  dc.l Howl1Name,7400
  25.  dc.l Howl2Name,9200
  26.  dc.l PantName,5000
  27. ;20
  28.  dc.l WhooshName,4000
  29.  dc.l ShotGunName,8800
  30. ; dc.l 0,0
  31.  dc.l FlameName,9000
  32.  dc.l MuffledName,1800
  33.  dc.l ClopName,3400
  34. ;25 
  35.  dc.l ClankName,1600
  36.  dc.l TeleportName,11000
  37.  dc.l HALFWORMPAINNAME,8400
  38.  dc.l -1
  39.  
  40. ShotGunName:    dc.b 'AB3D2:sounds/shotgun',0
  41.  even 
  42. ScreamName:    dc.b 'AB3D2:sounds/scream',0
  43.  even
  44. LowScreamName:    dc.b 'AB3D2:sounds/lowscream',0
  45.  even
  46. BaddieGunName:    dc.b 'AB3D2:sounds/baddiegun',0
  47.  even
  48. BassName:    dc.b 'AB3D2:sounds/splash',0
  49.  even
  50. ShootName:    dc.b 'AB3D2:sounds/fire!',0
  51.  even
  52. MunchName:    dc.b 'AB3D2:sounds/munch',0
  53.  even
  54. PooGunName:    dc.b 'AB3D2:sounds/shoot.dm',0
  55.  even
  56. CollectName:    dc.b 'AB3D2:sounds/collect',0
  57.  even
  58. DoorNoiseName:    dc.b 'AB3D2:sounds/newdoor',0
  59.  even
  60. StompName:    dc.b 'AB3D2:sounds/footstep3',0
  61.  even
  62. SwitchNoiseName:dc.b 'AB3D2:sounds/switch',0
  63.  even
  64. ReloadName:    dc.b 'AB3D2:sounds/switch1.sfx',0
  65.  even
  66. NoAmmoName:    dc.b 'AB3D2:sounds/noammo',0
  67.  even
  68. SplotchName:    dc.b 'AB3D2:sounds/splotch',0
  69.  even
  70. SplatPopName:    dc.b 'AB3D2:sounds/splatpop',0
  71.  even
  72. BoomName:    dc.b 'AB3D2:sounds/boom',0
  73.  even
  74. HissName:    dc.b 'AB3D2:sounds/newhiss',0
  75.  even
  76. Howl1Name:    dc.b 'AB3D2:sounds/howl1',0
  77.  even
  78. Howl2Name:    dc.b 'AB3D2:sounds/howl2',0
  79.  even
  80. PantName:    dc.b 'AB3D2:sounds/pant',0
  81.  even
  82. WhooshName:    dc.b 'AB3D2:sounds/whoosh',0
  83.  even
  84. RoarName:    dc.b 'AB3D2:sounds/bigscream',0
  85.  even
  86. FlameName:    dc.b 'AB3D2:sounds/flame',0 
  87.  even
  88. MuffledName:    dc.b 'AB3D2:sounds/MuffledFoot',0
  89.  even
  90. ClopName:    dc.b 'AB3D2:sounds/footclop',0
  91.  even
  92. ClankName:    dc.b 'AB3D2:sounds/footclank',0
  93.  even
  94. TeleportName:    dc.b 'AB3D2:sounds/teleport',0
  95.  even
  96. HALFWORMPAINNAME: dc.b 'AB3D2:sounds/HALFWORMPAIN',0
  97.  even
  98.  
  99. ;-102
  100. ;7c
  101.  
  102. OBJ_NAMES:
  103.  dc.l wad1n
  104.  dc.l ptr1n
  105.  
  106.  dc.l wad2n
  107.  dc.l ptr2n
  108.  
  109. ; dc.l wad3n
  110. ; dc.l ptr3n
  111.  
  112.  dc.l wad4n
  113.  dc.l ptr4n
  114.  
  115.  dc.l wad5n
  116.  dc.l ptr5n
  117.  
  118.  dc.l wad6n
  119.  dc.l ptr6n
  120.  
  121.  dc.l wad7n
  122.  dc.l ptr7n
  123.  
  124.  dc.l wad8n
  125.  dc.l ptr8n
  126.  
  127.  dc.l wad9n
  128.  dc.l ptr9n
  129.  
  130.  dc.l wadan
  131.  dc.l ptran
  132.  
  133.  dc.l wadbn
  134.  dc.l ptrbn
  135.  
  136.  dc.l wadcn
  137.  dc.l ptrcn
  138.  
  139.  dc.l waddn
  140.  dc.l ptrdn
  141.  
  142.  dc.l waden
  143.  dc.l ptren
  144.  
  145.  dc.l wadfn
  146.  dc.l ptrfn
  147.  
  148.  dc.l -1,-1
  149.  
  150. wad1n:
  151.  dc.b 'AB3D1:includes/ALIEN2.wad',0
  152.  even
  153. ptr1n:
  154.  dc.b 'AB3D1:includes/ALIEN2.ptr',0
  155.  even
  156. wad2n:
  157.  dc.b 'AB3D1:includes/PICKUPS.wad',0
  158.  even
  159. ptr2n:
  160.  dc.b 'AB3D1:includes/PICKUPS.ptr',0
  161.  even
  162. wad3n:
  163.  dc.b 'AB3D1:includes/uglymonster.wad',0
  164.  even
  165. ptr3n:
  166.  dc.b 'AB3D1:includes/uglymonster.ptr',0
  167.  even
  168. wad4n:
  169.  dc.b 'AB3D1:includes/flyingalien.wad',0
  170.  even
  171. ptr4n:
  172.  dc.b 'AB3D1:includes/flyingalien.ptr',0
  173.  even
  174. wad5n:
  175.  dc.b 'AB3D1:includes/keys.wad',0
  176.  even
  177. ptr5n:
  178.  dc.b 'AB3D1:includes/keys.ptr',0
  179.  even
  180. wad6n:
  181.  dc.b 'AB3D1:includes/rockets.wad',0
  182.  even
  183. ptr6n:
  184.  dc.b 'AB3D1:includes/rockets.ptr',0
  185.  even
  186. wad7n:
  187.  dc.b 'AB3D1:includes/barrel.wad',0
  188.  even
  189. ptr7n:
  190.  dc.b 'AB3D1:includes/barrel.ptr',0
  191.  even
  192. wad8n:
  193.  dc.b 'AB3D1:includes/bigbullet.wad',0
  194.  even
  195. ptr8n:
  196.  dc.b 'AB3D1:includes/bigbullet.ptr',0
  197.  even
  198. wad9n:
  199.  dc.b 'AB3D1:includes/newgunsinhand.wad',0
  200.  even
  201. ptr9n:
  202.  dc.b 'AB3D1:includes/newgunsinhand.ptr',0
  203.  even
  204. wadan:
  205.  dc.b 'AB3D1:includes/newmarine.wad',0
  206.  even
  207. ptran:
  208.  dc.b 'AB3D1:includes/newmarine.ptr',0
  209.  even
  210. wadbn:
  211.  dc.b 'AB3D1:includes/lamps.wad',0
  212.  even
  213. ptrbn:
  214.  dc.b 'AB3D1:includes/lamps.ptr',0
  215.  even
  216. wadcn:
  217.  dc.b 'AB3D1:includes/worm.wad',0
  218.  even
  219. ptrcn:
  220.  dc.b 'AB3D1:includes/worm.ptr',0
  221.  even
  222. waddn:
  223.  dc.b 'AB3D1:includes/explosion.wad',0
  224.  even
  225. ptrdn:
  226.  dc.b 'AB3D1:includes/explosion.ptr',0
  227.  even
  228. waden:
  229.  dc.b 'AB3D1:includes/bigclaws.wad',0
  230.  even
  231. ptren:
  232.  dc.b 'AB3D1:includes/bigclaws.ptr',0
  233.  even
  234. wadfn:
  235.  dc.b 'AB3D1:includes/tree.wad',0
  236. ptrfn:
  237.  dc.b 'AB3D1:includes/tree.ptr',0
  238.  even
  239.  
  240. OBJ_ADDRS: ds.l 80
  241.  
  242. blocklen: dc.l 0
  243. blockname: dc.l 0
  244. blockstart: dc.l 0
  245.  
  246. BOTPICNAME: dc.b 'AB3D2:includes/panelraw',0
  247.  even
  248. PanelLen: dc.l 0
  249.  
  250. FREEBOTMEM:
  251.  move.l Panel,d1
  252.  move.l d1,a1
  253.  move.l PanelLen,d0
  254.  move.l 4.w,a6
  255.  jsr -210(a6)
  256.  
  257.  rts
  258.  
  259. LOADBOTPIC:
  260.  
  261.  PRSDb
  262.  
  263.  move.l #BOTPICNAME,blockname
  264.  
  265.  move.l doslib,a6
  266.  move.l blockname,d1
  267.  move.l #1005,d2
  268.  jsr -30(a6)
  269.  move.l d0,handle
  270.  
  271.  lea fib,a5
  272.  move.l handle,d1
  273.  move.l a5,d2
  274.  jsr -390(a6)
  275.  
  276.  move.l $7c(a5),blocklen
  277.  move.l #30720,PanelLen
  278.  
  279.  move.l #2,d1
  280.  move.l 4.w,a6
  281.  move.l PanelLen,d0
  282.  jsr -198(a6)
  283.  move.l d0,blockstart
  284. ; move.l doslib,a6
  285. ; move.l blockname,d1
  286. ; move.l #1005,d2
  287. ; jsr -30(a6)
  288.  move.l doslib,a6
  289. ; move.l d0,handle
  290.  
  291.  move.l handle,d1
  292.  move.l LEVELDATA,d2
  293.  move.l blocklen,d3
  294.  jsr -42(a6)
  295.  move.l doslib,a6
  296.  move.l handle,d1
  297.  jsr -36(a6)
  298.  
  299.  move.l blockstart,Panel
  300.  
  301.  move.l LEVELDATA,d0
  302.  moveq #0,d1
  303.  move.l Panel,a0
  304.  lea WorkSpace,a1
  305.  lea $0,a2
  306.  jsr unLHA
  307.  
  308.  rts
  309.  
  310. LOADOBS:
  311.  
  312.  PRSDG
  313.  
  314.  move.l #OBJ_ADDRS,a2
  315.  move.l #OBJ_NAMES,a0
  316.  move.l #Objects,a1
  317.  bsr LOAD_AN_OBJ
  318.  move.l blockstart,(a1)
  319.  bsr LOAD_AN_OBJ
  320.  move.l blockstart,4(a1)
  321.  
  322.  bsr LOAD_AN_OBJ
  323.  move.l blockstart,16(a1)
  324.  bsr LOAD_AN_OBJ
  325.  move.l blockstart,16+4(a1)
  326.  
  327. ; bsr LOAD_AN_OBJ
  328. ; move.l blockstart,(16*3)(a1)
  329. ; bsr LOAD_AN_OBJ
  330. ; move.l blockstart,(16*3)+4(a1)
  331.  
  332.  bsr LOAD_AN_OBJ
  333.  move.l blockstart,(16*4)(a1)
  334.  bsr LOAD_AN_OBJ
  335.  move.l blockstart,(16*4)+4(a1)
  336.  
  337.  PRSDH
  338.  
  339.  bsr LOAD_AN_OBJ
  340.  move.l blockstart,(16*5)(a1)
  341.  bsr LOAD_AN_OBJ
  342.  move.l blockstart,(16*5)+4(a1)
  343.  
  344.  bsr LOAD_AN_OBJ
  345.  move.l blockstart,(16*6)(a1)
  346.  bsr LOAD_AN_OBJ
  347.  move.l blockstart,(16*6)+4(a1)
  348.  
  349.  bsr LOAD_AN_OBJ
  350.  move.l blockstart,(16*7)(a1)
  351.  bsr LOAD_AN_OBJ
  352.  move.l blockstart,(16*7)+4(a1)
  353.  
  354.  bsr LOAD_AN_OBJ
  355.  move.l blockstart,(16*2)(a1)
  356.  bsr LOAD_AN_OBJ
  357.  move.l blockstart,(16*2)+4(a1)
  358.  
  359.  bsr LOAD_AN_OBJ
  360.  move.l blockstart,(16*9)(a1)
  361.  bsr LOAD_AN_OBJ
  362.  move.l blockstart,(16*9)+4(a1)
  363.  
  364.  bsr LOAD_AN_OBJ
  365.  move.l blockstart,(16*10)(a1)
  366.  move.l blockstart,(16*16)(a1)
  367.  move.l blockstart,(16*17)(a1)
  368.  bsr LOAD_AN_OBJ
  369.  move.l blockstart,(16*10)+4(a1)
  370.  move.l blockstart,(16*16)+4(a1)
  371.  move.l blockstart,(16*17)+4(a1)
  372.  
  373. ***********************
  374.  
  375. ; load big monster here
  376.  
  377. ***********************
  378.  
  379.  
  380.  bsr LOAD_AN_OBJ
  381.  move.l blockstart,(16*12)(a1)
  382.  bsr LOAD_AN_OBJ
  383.  move.l blockstart,(16*12)+4(a1) 
  384.  
  385.  bsr LOAD_AN_OBJ
  386.  move.l blockstart,(16*13)(a1)
  387.  bsr LOAD_AN_OBJ
  388.  move.l blockstart,(16*13)+4(a1) 
  389.  
  390.  PRSDI
  391.  
  392.  bsr LOAD_AN_OBJ
  393.  move.l blockstart,(16*8)(a1)
  394.  bsr LOAD_AN_OBJ
  395.  move.l blockstart,(16*8)+4(a1)
  396.  
  397.  bsr LOAD_AN_OBJ
  398.  move.l blockstart,(16*14)(a1)
  399.  bsr LOAD_AN_OBJ
  400.  move.l blockstart,(16*14)+4(a1) 
  401.  
  402.  bsr LOAD_AN_OBJ
  403.  move.l blockstart,(16*15)(a1)
  404.  bsr LOAD_AN_OBJ
  405.  move.l blockstart,(16*15)+4(a1) 
  406.  
  407.  
  408. **************************************
  409. * Just for charles
  410.  
  411. ; move.l doslib,a6
  412. ; move.l #TESTNAME,d1
  413. ; move.l #1005,d2
  414. ; jsr -30(a6)
  415. ; move.l d0,handle
  416. ;
  417. ; move.l handle,d1
  418. ; move.l #Spider_des,d2
  419. ; move.l #100000,d3
  420. ; jsr -42(a6)
  421. ; move.l doslib,a6
  422. ; move.l handle,d1
  423. ; jsr -36(a6)
  424. ************************************** 
  425.  
  426.  rts
  427.  
  428. ;TESTNAME: dc.b 'ab3:includes/TESTOBJ'
  429. ; dc.b 0
  430. ; even
  431.  
  432.  CNOP 0,4
  433. fib: ds.l 75
  434.  
  435. LOAD_AN_OBJ:
  436.  movem.l a0/a1/a2,-(a7)
  437.  
  438.  move.l (a0),blockname
  439.  
  440.  move.l doslib,a6
  441.  move.l blockname,d1
  442.  move.l #1005,d2
  443.  jsr -30(a6)
  444.  move.l d0,handle
  445.  
  446.  lea fib,a5
  447.  move.l handle,d1
  448.  move.l a5,d2
  449.  jsr -390(a6)
  450.  
  451.  move.l $7c(a5),blocklen
  452.  
  453.  move.l #1,d1
  454.  move.l 4.w,a6
  455.  move.l blocklen,d0
  456.  jsr -198(a6)
  457.  move.l d0,blockstart
  458. ; move.l doslib,a6
  459. ; move.l blockname,d1
  460. ; move.l #1005,d2
  461. ; jsr -30(a6)
  462.  move.l doslib,a6
  463. ; move.l d0,handle
  464.  
  465.  move.l handle,d1
  466.  move.l blockstart,d2
  467.  move.l blocklen,d3
  468.  jsr -42(a6)
  469.  move.l doslib,a6
  470.  move.l handle,d1
  471.  jsr -36(a6)
  472.  
  473.  movem.l (a7)+,a0/a1/a2
  474.  
  475.  move.l blockstart,(a2)+
  476.  move.l blocklen,(a2)+
  477.  addq #4,a0
  478.  
  479.  rts
  480.  
  481. RELEASEOBJMEM:
  482.  
  483.  
  484.  move.l #OBJ_NAMES,a0
  485.  move.l #OBJ_ADDRS,a2
  486.  
  487. relobjlop
  488.  move.l (a2)+,blockstart
  489.  move.l (a2)+,blocklen
  490.  addq #8,a0
  491.  tst.l blockstart
  492.  ble.s nomoreovj
  493.  
  494.  movem.l a0/a2,-(a7)
  495.  
  496.  move.l blockstart,d1
  497.  move.l d1,a1
  498.  move.l blocklen,d0
  499.  move.l 4.w,a6
  500.  jsr -210(a6)
  501.  
  502.  movem.l (a7)+,a0/a2
  503.  bra.s relobjlop
  504.  
  505. nomoreovj:
  506.  
  507.  rts
  508.  
  509.  
  510.  
  511.  
  512. LOAD_SFX:
  513.  
  514.  PRSDJ
  515.  
  516.  move.l #SFX_NAMES,a0
  517.  move.l #SampleList,a1
  518. LOADSAMPS
  519.  move.l (a0)+,a2
  520.  move.l a2,d0
  521.  tst.l d0
  522.  bgt.s oktoload
  523.  blt.s doneload
  524.  
  525.  addq #4,a0
  526.  addq #8,a1
  527.  bra LOADSAMPS
  528.  
  529. doneload:
  530.  
  531.  move.l #-1,(a1)+
  532.  rts
  533. oktoload:
  534.  move.l (a0)+,blocklen
  535.  move.l a2,blockname
  536.  movem.l a0/a1,-(a7)
  537.  move.l #2,d1
  538.  move.l 4.w,a6
  539.  move.l blocklen,d0
  540.  jsr -198(a6)
  541.  move.l d0,blockstart
  542.  move.l doslib,a6
  543.  move.l blockname,d1
  544.  move.l #1005,d2
  545.  jsr -30(a6)
  546.  move.l doslib,a6
  547.  move.l d0,handle
  548.  move.l d0,d1
  549.  move.l blockstart,d2
  550.  move.l blocklen,d3
  551.  jsr -42(a6)
  552.  move.l doslib,a6
  553.  move.l handle,d1
  554.  jsr -36(a6)
  555.  movem.l (a7)+,a0/a1
  556.  move.l blockstart,d0
  557.  move.l d0,(a1)+
  558.  add.l blocklen,d0
  559.  move.l d0,(a1)+
  560.  bra LOADSAMPS
  561.  
  562.  
  563.  
  564. LOADFLOOR
  565.  PRSDK
  566.  move.l #65536,d0
  567.  move.l #1,d1
  568.  move.l 4.w,a6
  569.  jsr -198(a6)
  570.  move.l d0,floortile
  571.  
  572.  move.l #floortilename,d1
  573.  move.l #1005,d2
  574.  move.l doslib,a6
  575.  jsr -30(a6)
  576.  move.l doslib,a6
  577.  move.l d0,handle
  578.  move.l d0,d1
  579.  move.l floortile,d2
  580.  move.l #65536,d3
  581.  jsr -42(a6)
  582.  move.l doslib,a6
  583.  move.l handle,d1
  584.  jsr -36(a6)
  585.  
  586.  rts
  587.  
  588.  
  589.  
  590. floortilename:
  591.  dc.b 'AB3D1:includes/floortile'
  592.  dc.b 0
  593.  
  594.  even
  595.  
  596. RELEASESAMPMEM:
  597.  move.l #SampleList,a0
  598. .relmem:
  599.  move.l (a0)+,d1
  600.  bge.s .okrel
  601.  rts
  602. .okrel:
  603.  move.l (a0)+,d0
  604.  sub.l d1,d0
  605.  move.l d1,a1
  606.  move.l 4.w,a6
  607.  move.l a0,-(a7)
  608.  jsr -210(a6)
  609.  move.l (a7)+,a0
  610.  bra .relmem
  611.  
  612. RELEASELEVELMEM:
  613.  
  614.  move.l LEVELGRAPHICS,d1
  615.  move.l d1,a1
  616.  move.l #50000,d0
  617.  move.l 4.w,a6
  618.  jsr -210(a6)
  619.  
  620.  move.l LEVELCLIPS,d1
  621.  move.l d1,a1
  622.  move.l #40000,d0
  623.  move.l 4.w,a6
  624.  jsr -210(a6)
  625.  rts
  626.  
  627. RELEASEFLOORMEM:
  628.  
  629.  move.l floortile,d1
  630.  move.l d1,a1
  631.  move.l #65536,d0
  632.  move.l 4.w,a6
  633.  jsr -210(a6)
  634.  rts
  635.  
  636. COPSCRN1: dc.l 0
  637. COPSCRN2: dc.l 0
  638.  
  639. RELEASESCRNMEM:
  640.  move.l COPSCRN1,d1
  641.  move.l d1,a1
  642.  move.l #(104*80*4)+16,d0
  643.  move.l 4.w,a6
  644.  jsr -210(a6)
  645.  move.l COPSCRN2,d1
  646.  move.l d1,a1
  647.  move.l #(104*80*4)+16,d0
  648.  move.l 4.w,a6
  649.  jsr -210(a6)
  650. ; move.l COPSCRNBUFF,d1
  651. ; move.l d1,a1
  652. ; move.l #(104*80*4)+16,d0
  653. ; move.l 4.w,a6
  654. ; jsr -210(a6)
  655.  
  656.  rts 
  657.  
  658. unLHA:    incbin    "ab3:Decomp4.raw"
  659.